Data source searching system and method thereof

ABSTRACT

The disclosure provides a data source searching system and a method adapted for the system. The system includes a number of cloud servers which store data. The system acquires creation time of the data in each cloud server in response to a command for searching data source of the data. A time zone of each cloud server is acquired. The system compares all creation time of the data in all cloud servers based on the time zones to determine which creation time of the data is in fact the earliest among all compared cloud servers and regards the cloud server which stores the data whose creation time is the earliest as the data source of the data.

BACKGROUND

1. Technical Field

The disclosure relates to searching systems and, more particularly, to adata source searching system and a data source searching method adaptedfor the system.

2. Description of Related Art

Different cloud servers may store a replicated data. A method of relatedart for determining which cloud server stores the original orearliest-replicated data earliest may include steps of: obtainingcreation time of the data in different cloud servers, wherein thecreation time of the data is dependent on the system time of each cloudserver; directly comparing the obtained creation time of the data in thecloud servers; and regarding the cloud server which stores the datawhose creation time is the earliest as the data source of the replicateddata. However, because the creation time of the data is generatedaccording to the system time of each cloud server, it may be inaccuratedue to time zone differences among the cloud servers.

Therefore, what is needed is a data source searching system to overcomethe described shortcoming.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a data source searching system inaccordance with an exemplary embodiment.

FIG. 2 is a flowchart of a method of searching for a data source of dataadapted for the system of FIG. 1 in accordance with a first exemplaryembodiment.

FIG. 3 is a flowchart of a method of searching for a data source of dataadapted for the system of FIG. 1 in accordance with a second exemplaryembodiment.

FIG. 4 is a schematic view of accomplishing the method of FIG. 3.

FIG. 5 is a flowchart of a method of searching for a data source of dataadapted for the system of FIG. 1 in accordance with a third exemplaryembodiment.

FIG. 6 is a flowchart of a method of searching for a data source of dataadapted for the system of FIG. 1 in accordance with a fourth exemplaryembodiment.

DETAILED DESCRIPTION

FIG. 1 is a block diagram of a data source searching system inaccordance with an exemplary embodiment. The data source searchingsystem (hereinafter “the system”) 1 is applied on a number of cloudservers. Each one of the number of cloud servers is connected vianetwork and may be distributed internationally. Each cloud server storesdata to provide network resources for users and records creation time ofthe data according to current time of the cloud server. If the datastored in a cloud server is created by the cloud server itself, thecloud server is regarded as a data source of the data. If the datastored in a second cloud server is loaded from a first cloud server, thecreation time of the data in the second cloud server is the time whenthe data was loaded from the first cloud server.

The system 1 includes an input unit 10, a creation time acquiring unit20, a locational area acquiring unit 30, a classifying unit 40, a timezone acquiring unit 50, and a determination unit 60.

The input unit 10 generates commands in response to user inputs. In theembodiment, the commands include a command for searching for a datasource of data. The creation time acquiring unit 20 acquires thecreation time of the data in each cloud server when the input unit 10generates the command for searching for a data source of the data. Forexample, there are five cloud servers which store the data and therespective creation times of the data in the five cloud servers are 11am, 12 am, 1 pm, 2 pm, and 3 pm.

The locational area acquiring unit 30 acquires a locational area of eachcloud server, such as Beijing and Tokyo areas. As is well known, eachlocational area is allocated with and identified by a network domain,and the network domain has a number of IP addresses allocated to it.Thus, if an IP address of one cloud server is acquired and determined,the locational area acquiring unit 30 acquires the network domain basedon the corresponding IP address and obtains the locational area of eachcloud server based on the corresponding network domain. In anotherembodiment, the locational area acquiring unit 30 is a positioning unitfor generating locational information of each cloud server and acquiringthe locational area of each cloud server based on the correspondinglocational information.

The time zone acquiring unit 50 acquires a time zone of each cloudserver based on the locational area from the locational area acquiringunit 30. The determination unit 60 further includes a time determiningmodule 61, a time zone defining module 62, and a time calculating module63.

All units and modules are described in FIGS. 2-3 and 5-6. In the firstexemplary embodiment, as shown in FIG. 2, in step S210, the creationtime acquiring unit 20 acquires the creation time of the data in eachcloud server when receiving a command for searching for the data sourceof the data, in response to user inputs from the input unit 10. In stepS220, the locational area acquiring unit 30 acquires a locational areaof each cloud server. In step S230, the time zone acquiring unit 50acquires the time zone of each cloud server based on the correspondinglocational area.

In step S240, the time determining module 61 calculates a time zonedifference between any two cloud servers based on the two time zones ofthe two cloud servers and determines the cloud server which stores thedata whose creation time is earlier based on the time zone difference.In step S250, the time determining module 61 further obtains the cloudserver which stores the data whose creation time is the earliest amongall compared cloud servers and regards the cloud server which stores thedata whose creation time is the earliest as the data source of the data.

For example, when the time determining module 61 compares two time zonesof any two cloud servers, each cloud server is compared once. If thereare four cloud servers which store the data, such as “a” in Beijing, “b”in Tokyo, “c” in New York, and “d” in London, the creation time of thedata in the “a” cloud server might be 10 am on Oct. 10, 2011, thecreation time of the data in the “b” cloud server might be 10:30 am onOct. 10, 2011, the creation time of the data in the “c” cloud servermight be 7 am on Oct. 10, 2011, and the creation time of the data in the“d” cloud server might be 8 am on Oct. 10, 2011, all these time beinglocal time.

At first, “a” and “b” cloud servers are compared. In detail, a time zonedifference between the “a” cloud server in Beijing and the “b” cloudserver in Tokyo is minus one hour to the east, therefore the actualcreation time of the data in the “b” cloud server is 9:30 am on Oct. 10,2011 in relation to the time zone of “a” cloud server, therefore, thetime determining module 61 determines that the creation time of the datain “b” cloud server is earlier than the creation time of the data in “a”cloud server.

Then “c” and “d” cloud servers are compared. In detail, a time zonedifference between “c” cloud server in New York and “d” cloud server inLondon is plus five hours to the west, therefore the creation time ofthe data in “c” cloud server is 7 am (plus five hours equals to 1 pm) onOct. 10, 2011 in relation to the time zone of “d” cloud server,therefore, the time determining module 61 determines that the creationtime of the data in “d” cloud server is earlier than the creation timeof the data in “c” cloud server.

At last, “b” and “d” cloud servers are compared. In detail, a time zonedifference between “b” cloud server in Tokyo and “d” cloud server inLondon is nine hours, the creation time of the data in the “d” cloudserver is 8 am local time (plus nine hours equals to 1 pm) on Oct. 10,2011 in relation to “b” cloud server, therefore, the time determiningmodule 61 determines that the creation time of the data in “b” cloudserver is earlier than the creation time of the data in “d” cloudserver, therefore, the creation time of the data in “b” cloud server isthe earliest and “b” cloud server is regarded as the data source of thedata.

In the second exemplary embodiment, as shown in FIG. 3, steps S310 andS320 are the same as steps S210 and S220 of FIG. 2 respectively. In stepS330, the classifying unit 40 regards the cloud servers which have thesame locational area as a same class, such as a first class, a secondclass, etc. as in FIG. 4, for example, the cloud servers in Beijing areregarded as a class. In step S340, the time determining module 61compares the creation time of the data in each class of cloud servers todetermine which creation time of the data in one cloud server of theclass of cloud servers is the earliest, such as a first cloud server ofthe first class, a second cloud server of the second class, etc. as inFIG. 4. In step S350, the time zone acquiring unit 50 acquires timezones of each class of cloud servers based on the locational areas.

In step S360, the time determining module 61 calculates a time zonedifference between any two cloud servers where the creation time of thedata is the earliest in the corresponding two classes of cloud serversbased on the two time zones of the two cloud servers to determine whichcreation time of the data in one of the two cloud servers is earlierbased on the time zone difference, for example, the two cloud serversare the “a” cloud server in Beijing and the “b” cloud server in Tokyo,and the time zone difference between the “a” cloud server in Beijing andthe “b” cloud server in Tokyo is minus one hour to the east. In stepS370, the time determining module 61 determines that the creation timeof one cloud server is the earliest among all compared cloud servers andregards the cloud server which stores the data whose creation time isthe earliest as the data source of the data.

In the third exemplary embodiment, as shown in FIG. 5, steps S510, S520,and S530 are the same as steps S210, S220, and S230 of FIG. 2respectively. In step S540, the time zone defining module 62 defines areference time zone and the time calculating module 63 calculates afirst time zone difference between the reference time zone and the timezone of each cloud server, for example, the time zone of Beijing isdefined as the reference time zone. In step S550, the time calculatingmodule 63 further calculates a first reference creation time of the datain each cloud server based on the creation time and the first time zonedifference of a first cloud server, for example, if the first cloudserver is in Beijing, the first reference creation time is equal to thecreation time of the data, and if the first cloud server is in Tokyo andthe creation time of the data in the first cloud server is 10:30 am onOct. 10, 2011, the first reference creation time of the data in thefirst cloud server is 9:30 am on Oct. 10, 2011 because of the one hourtime zone difference between Beijing and Tokyo. In step S560, the timedetermining module 61 compares all first reference creation times of allcloud servers to determine which creation time of any one cloud serveris the earliest among all compared cloud servers and regards the cloudserver which stores the data whose creation time is the earliest as thedata source of the data.

In the fourth exemplary embodiment, as shown in FIG. 6, steps S610 andS620 are the same as steps S210 and S220 of FIG. 2 respectively, andsteps S630, S640, and S650 are the same as steps S330, S340, and S350 ofFIG. 3 respectively. In step S660, the time zone defining module 62defines a reference time zone, and the time calculating module 63calculates a second time zone difference between the reference time zoneand the time zone of each cloud server of each class of cloud servers.In step S670, the time calculating module 63 further calculates a secondreference creation time of the data in each determined cloud serverbased on the creation time and the second time zone difference of thedetermined cloud server. In step S680, the time determining module 61compares all second reference creation times of all determined cloudservers to determine which creation time is the earliest among allcompared cloud servers and regards the cloud server which stores thedata whose creation time is the earliest as the data source of the data.

Although the present disclosure has been specifically described on thebasis of the exemplary embodiment thereof, the disclosure is not to beconstrued as being limited thereto. Various changes or modifications maybe made to the embodiment without departing from the scope and spirit ofthe disclosure.

What is claimed is:
 1. A data source searching system, wherein thesystem is applied on a plurality of cloud servers, and the plurality ofcloud servers are connected each other via network and store data, thesystem comprising: an input unit to generate a command for searching fora data source of data in response to user inputs; a creation timeacquiring unit to acquire creation time of the data in each of theplurality of cloud servers in response to the command from the inputunit; a locational area acquiring unit to acquire a locational area ofeach of the plurality of cloud servers; a time zone acquiring unit toacquire a time zone of each of the plurality of cloud servers based onthe corresponding locational area from the locational area acquiringunit; and a determination unit to determine one of the plurality ofcloud servers, which stores the data whose creation time is the earliestamong the plurality of cloud servers based on the acquired time zone ofeach of the plurality of cloud severs, as the data source of the data.2. The data source searching system as recited in claim 1, wherein thelocational area acquiring unit acquires an IP address of each of theplurality of cloud servers and a network domain based on thecorresponding IP address, and obtains the locational area of each of theplurality of cloud servers based on the corresponding network domain. 3.The data source searching system as recited in claim 1, wherein thelocational area acquiring unit is a positioning unit for generatinglocational information of each of the plurality of cloud servers andacquiring the locational area of each of the plurality of cloud serversbased on the corresponding locational information.
 4. The data sourcesearching system as recited in claim 1, further comprising a classifyingunit for regarding the cloud servers which have the same locational areaas a same class, wherein the determination unit is further configured tocompare the creation time of the data of each class of cloud servers todetermine that the creation time of the data in one cloud server is theearliest in the class of cloud servers.
 5. The data source searchingsystem as recited in claim 4, wherein the time zone acquiring unit isconfigured to acquire the time zone of each class of cloud servers basedon the corresponding locational area, the determination unit isconfigured to define a reference time zone and calculate a time zonedifference between the reference time zone and the time zone of eachcloud server of each class of cloud servers and a reference creationtime of the data in each determined cloud server based on the creationtime and the time zone difference of the corresponding determined cloudserver, and compare all reference creation time of the data in alldetermined cloud servers to determine which creation time of the data inone cloud server is the earliest among all compared cloud servers andregard the cloud server which stores the data whose creation time is theearliest as the data source of the data.
 6. The data source searchingsystem as recited in claim 1, wherein the determination unit isconfigured to calculate a time zone difference between any two cloudservers based on the two time zones of the two cloud servers anddetermine which creation time of the data in one of the two cloudservers is earlier based on the time zone difference, further determinethat the creation time of one cloud server is the earliest among allcompared cloud servers and regard the cloud server which stores the datawhose creation time is the earliest as the data source of the data. 7.The data source searching system as recited in claim 1, wherein thedetermination unit is configured to define a reference time zone andcalculate a time zone difference between the reference time zone and thetime zone of each of the plurality of cloud servers, calculate areference creation time of the data in each of the plurality of cloudservers based on the creation time and the time zone difference of thecorresponding cloud server, and compare all reference creation time ofthe data in all the plurality of cloud servers to determine whichcreation time of one cloud server is the earliest among all comparedcloud servers and regard the cloud server which stores the data whosecreation time is the earliest as the data source of the data.
 8. A datasource searching method for a system, wherein the system is applied on aplurality of cloud servers, and the plurality of cloud servers areconnected each other via network and store data, the method comprising:acquiring creation time of the data in each of the plurality of cloudservers in response to user inputs; acquiring a locational area of eachof the plurality of cloud servers; acquiring a time zone of each of theplurality of cloud servers based on the corresponding locational area;and determining one of the plurality of cloud servers, which stores thedata whose creation time is the earliest among the plurality of cloudservers based on the acquired time zone of each of the plurality ofcloud severs, as the data source of the data.
 9. The data sourcesearching method as recited in claim 8, the step “acquiring a locationalarea of each of the plurality of cloud servers” comprising: acquiring anIP address of each of the plurality of cloud servers and a networkdomain based on the corresponding IP address; and obtaining thelocational area of each of the plurality of cloud servers based on thecorresponding network domain.
 10. The data source searching method asrecited in claim 8, the step “acquiring a locational area of each of theplurality of cloud servers” comprising: obtaining locational informationof each of the plurality of cloud servers and acquiring the locationalarea of each of the plurality of cloud servers based on thecorresponding locational information.
 11. The data source searchingmethod as recited in claim 8, after the step “acquiring a locationalarea of each of the plurality of cloud servers” comprising: regardingthe cloud servers which have the same locational area as a same class;and comparing the creation time of the data of each class of cloudservers to determine that the creation time of the data in one cloudserver is the earliest in the class of cloud servers.
 12. The datasource searching method as recited in claim 11, further comprising:acquiring the time zone of each class of cloud servers based on thecorresponding locational area; defining a reference time zone andcalculating a time zone difference between the reference time zone andthe time zone of each cloud server of each class of cloud servers and areference creation time of the data in each determined cloud serverbased on the creation time and the time zone difference of thecorresponding determined cloud server; and comparing all referencecreation time of the data in all determined cloud servers to determinewhich creation time of the data in one cloud server is the earliestamong all compared cloud servers and regarding the cloud server whichstores the data whose creation time is the earliest as the data sourceof the data.
 13. The data source searching method as recited in claim 8,the step “determining one of the plurality of cloud servers, whichstores the data whose creation time is the earliest among the pluralityof cloud servers based on the acquired time zone of each of theplurality of cloud severs, as the data source of the data” comprising:calculating a time zone difference between any two cloud servers basedon the two time zones of the two cloud servers and determining whichcreation time of the data in one of the two cloud servers is earlierbased on the time zone difference; and determining which creation timeof one cloud server is the earliest among all compared cloud servers andregarding the cloud server which stores the data whose creation time isthe earliest as the data source of the data.
 14. The data sourcesearching method as recited in claim 8, the step “determining one of theplurality of cloud servers, which stores the data whose creation time isthe earliest among the plurality of cloud servers based on the acquiredtime zone of each of the plurality of cloud severs, as the data sourceof the data” comprising: defining a reference time zone and calculatinga time zone difference between the reference time zone and the time zoneof each of the plurality of cloud servers; calculating a referencecreation time of the data in each of the plurality of cloud serversbased on the creation time and the time zone difference of thecorresponding cloud server; and comparing all reference creation time ofall the plurality of cloud servers to determine which creation time ofthe data in one cloud server is the earliest among all compared cloudservers and regarding the cloud server which stores the data whosecreation time is the earliest as the data source of the data.